package drds.global_transaction.api.rpc.rpc_server;

import drds.global_transaction.api.message_codec.request_and_response.register_manager.RegisterResourceManagerRequestMessage;
import drds.global_transaction.api.message_codec.request_and_response.register_manager.RegisterTransactionManagerRequestMessage;
import io.netty.channel.ChannelHandlerContext;

public interface MessageListener
{

	void onTransactionMessage(ChannelHandlerContext channelHandlerContext, Sender sender, long messageId, Object message);

	void onRegisterResourceManagerRequest(ChannelHandlerContext channelHandlerContext, Sender sender, long messageId, RegisterResourceManagerRequestMessage registerResourceManagerRequest, RegisterCheckAuthHandler registerCheckAuthHandler);

	void onRegisterTransactionManagerRequest(ChannelHandlerContext channelHandlerContext, Sender sender, long messageId, RegisterTransactionManagerRequestMessage registerTransactionManagerRequest, RegisterCheckAuthHandler registerCheckAuthHandler);

	void onCheckMessageRequest(ChannelHandlerContext channelHandlerContext, Sender sender, long messageId);

}
